[INFO] fetching crate askr 0.1.7...
[INFO] checking askr-0.1.7 against master#82310651b93a594a3fd69015e1562186a080d94c for pr-145770
[INFO] extracting crate askr 0.1.7 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate askr 0.1.7
[INFO] finished tweaking crates.io crate askr 0.1.7
[INFO] tweaked toml for crates.io crate askr 0.1.7 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate askr 0.1.7 on toolchain 82310651b93a594a3fd69015e1562186a080d94c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate askr 0.1.7 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded clap_complete v4.5.54
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b0200a783a2e39c4a4d1f224e5dbbdaad6209aad14ec9607c1f45273fe8e9e95
[INFO] running `Command { std: "docker" "start" "-a" "b0200a783a2e39c4a4d1f224e5dbbdaad6209aad14ec9607c1f45273fe8e9e95", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b0200a783a2e39c4a4d1f224e5dbbdaad6209aad14ec9607c1f45273fe8e9e95", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0200a783a2e39c4a4d1f224e5dbbdaad6209aad14ec9607c1f45273fe8e9e95", kill_on_drop: false }`
[INFO] [stdout] b0200a783a2e39c4a4d1f224e5dbbdaad6209aad14ec9607c1f45273fe8e9e95
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d4ad83b22c4c45384d413cef3bc0314c21aab3e2281e5506a4c5b2fe663186c1
[INFO] running `Command { std: "docker" "start" "-a" "d4ad83b22c4c45384d413cef3bc0314c21aab3e2281e5506a4c5b2fe663186c1", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]     Checking anstyle v1.0.11
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking cfg-if v1.0.1
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]     Checking anstyle-query v1.1.3
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]     Checking clap_lex v0.7.5
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking iana-time-zone v0.1.63
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]     Checking bitflags v2.9.1
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking anstream v0.6.19
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking clap_builder v4.5.40
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling syn v2.0.103
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling clap_derive v4.5.40
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking clap v4.5.40
[INFO] [stderr]     Checking clap_complete v4.5.54
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking askr v0.1.7 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/validation/rules/format.rs:626:13
[INFO] [stdout]     |
[INFO] [stdout] 626 |         let result = email_validator.validate(&long_email);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `height` is never read
[INFO] [stdout]   --> src/ui/layout.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct LayoutManager {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 13 |     width: u16,
[INFO] [stdout] 14 |     height: u16,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayoutManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `original_hook` is never read
[INFO] [stdout]   --> src/ui/terminal.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Terminal {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 65 |     original_hook: Option<Box<dyn Fn() + Send + Sync>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `height` is never read
[INFO] [stdout]   --> src/ui/layout.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct LayoutManager {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 13 |     width: u16,
[INFO] [stdout] 14 |     height: u16,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayoutManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `original_hook` is never read
[INFO] [stdout]   --> src/ui/terminal.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Terminal {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 65 |     original_hook: Option<Box<dyn Fn() + Send + Sync>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/validation/rules/format.rs:626:13
[INFO] [stdout]     |
[INFO] [stdout] 626 |         let result = email_validator.validate(&long_email);
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verbose` is never read
[INFO] [stdout]   --> src/cli/config.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct PromptConfig {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub verbose: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PromptConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]   --> src/cli/config.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct UiConfig {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 21 |     pub no_color: bool,
[INFO] [stdout] 22 |     pub width: Option<u16>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UiConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Terminal` is never constructed
[INFO] [stdout]   --> src/error.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum PromptError {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     Terminal(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PromptError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `success_icon` and `background` are never read
[INFO] [stdout]   --> src/ui/colors.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub struct ColorScheme {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub success_icon: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 17 |     pub background: Option<Color>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ColorScheme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `high_contrast` is never used
[INFO] [stdout]   --> src/ui/colors.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl ColorScheme {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn high_contrast() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `italic` and `underlined` are never used
[INFO] [stdout]   --> src/ui/colors.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | impl ColoredText {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn italic(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn underlined(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `success_message`, `no_color_error`, `no_color_warning`, `no_color_info`, and `no_color_success` are never used
[INFO] [stdout]    --> src/ui/colors.rs:180:12
[INFO] [stdout]     |
[INFO] [stdout] 108 | impl Colorizer {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn success_message(&self, text: impl Into<String>) -> ColoredText {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn no_color_error(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn no_color_warning(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn no_color_info(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn no_color_success(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `height` and `error_area_height` are never read
[INFO] [stdout]   --> src/ui/layout.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct LayoutManager {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 13 |     width: u16,
[INFO] [stdout] 14 |     height: u16,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     error_area_height: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayoutManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_error_area_height`, `prompt_position`, `input_position`, `error_area_bounds`, and `help_position` are never used
[INFO] [stdout]   --> src/ui/layout.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl LayoutManager {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn update_error_area_height(&mut self, error_count: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn prompt_position(&self) -> (u16, u16) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn input_position(&self, prompt_width: u16) -> (u16, u16) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn error_area_bounds(&self) -> (u16, u16, u16) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn help_position(&self) -> Option<(u16, u16)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cursor_saved` is never read
[INFO] [stdout]    --> src/ui/layout.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct Screen<W: Write + ExecutableCommand> {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 106 |     cursor_saved: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/ui/layout.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<W: Write + ExecutableCommand> Screen<W> {
[INFO] [stdout]     | -------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn save_cursor(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn restore_cursor(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn move_to(&mut self, x: u16, y: u16) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn clear_line(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn write_at(&mut self, x: u16, y: u16, text: &ColoredText) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn write_prompt_at(&mut self, prompt_text: &str, x: u16, y: u16) -> io::Result<u16> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn position_cursor_after_input(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn write_choice(&mut self, choice_text: &str) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub fn write_highlighted_choice(&mut self, choice_text: &str) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `colors_supported`, `unicode_support`, `width`, and `height` are never read
[INFO] [stdout]   --> src/ui/terminal.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct TerminalCapabilities {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 10 |     pub colors_supported: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     pub cursor_control: bool,
[INFO] [stdout] 12 |     pub unicode_support: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     pub width: u16,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 14 |     pub height: u16,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TerminalCapabilities` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fallback_ui` is never used
[INFO] [stdout]   --> src/ui/terminal.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl TerminalCapabilities {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn fallback_ui(&self) -> UIMode {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UIMode` is never used
[INFO] [stdout]   --> src/ui/terminal.rs:56:10
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub enum UIMode {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `original_hook` is never read
[INFO] [stdout]   --> src/ui/terminal.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Terminal {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 65 |     original_hook: Option<Box<dyn Fn() + Send + Sync>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `enter_alternate_screen`, `clear_screen`, and `flush` are never used
[INFO] [stdout]    --> src/ui/terminal.rs:89:12
[INFO] [stdout]     |
[INFO] [stdout] 68  | impl Terminal {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn enter_alternate_screen(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn clear_screen(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `description` is never used
[INFO] [stdout]   --> src/validation/mod.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Validator: Send + Sync {
[INFO] [stdout]    |           --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn description(&self) -> &str {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_str` and `icon` are never used
[INFO] [stdout]   --> src/validation/priority.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Priority {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn from_str(s: &str) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn icon(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `blocking` is never used
[INFO] [stdout]   --> src/validation/result.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | impl PartialValidationResult {
[INFO] [stdout]    | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn blocking(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `min_only` and `max_only` are never used
[INFO] [stdout]    --> src/validation/rules/numeric.rs:182:12
[INFO] [stdout]     |
[INFO] [stdout] 172 | impl RangeValidator {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn min_only(min: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn max_only(max: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verbose` is never read
[INFO] [stdout]   --> src/cli/config.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct PromptConfig {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub verbose: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PromptConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]   --> src/cli/config.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct UiConfig {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 21 |     pub no_color: bool,
[INFO] [stdout] 22 |     pub width: Option<u16>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UiConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Terminal` is never constructed
[INFO] [stdout]   --> src/error.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum PromptError {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 12 |     Terminal(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PromptError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `success_icon` and `background` are never read
[INFO] [stdout]   --> src/ui/colors.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub struct ColorScheme {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub success_icon: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 17 |     pub background: Option<Color>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ColorScheme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `high_contrast` is never used
[INFO] [stdout]   --> src/ui/colors.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl ColorScheme {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn high_contrast() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `italic` and `underlined` are never used
[INFO] [stdout]   --> src/ui/colors.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | impl ColoredText {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn italic(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn underlined(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `success_message`, `no_color_error`, `no_color_warning`, `no_color_info`, and `no_color_success` are never used
[INFO] [stdout]    --> src/ui/colors.rs:180:12
[INFO] [stdout]     |
[INFO] [stdout] 108 | impl Colorizer {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn success_message(&self, text: impl Into<String>) -> ColoredText {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn no_color_error(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn no_color_warning(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn no_color_info(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn no_color_success(&self, text: impl Into<String>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `height` and `error_area_height` are never read
[INFO] [stdout]   --> src/ui/layout.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct LayoutManager {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 13 |     width: u16,
[INFO] [stdout] 14 |     height: u16,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     error_area_height: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayoutManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_error_area_height`, `prompt_position`, `input_position`, `error_area_bounds`, and `help_position` are never used
[INFO] [stdout]   --> src/ui/layout.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl LayoutManager {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn update_error_area_height(&mut self, error_count: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn prompt_position(&self) -> (u16, u16) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn input_position(&self, prompt_width: u16) -> (u16, u16) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn error_area_bounds(&self) -> (u16, u16, u16) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn help_position(&self) -> Option<(u16, u16)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cursor_saved` is never read
[INFO] [stdout]    --> src/ui/layout.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct Screen<W: Write + ExecutableCommand> {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 106 |     cursor_saved: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/ui/layout.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<W: Write + ExecutableCommand> Screen<W> {
[INFO] [stdout]     | -------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn save_cursor(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn restore_cursor(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn move_to(&mut self, x: u16, y: u16) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn clear_line(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn write_at(&mut self, x: u16, y: u16, text: &ColoredText) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn write_prompt_at(&mut self, prompt_text: &str, x: u16, y: u16) -> io::Result<u16> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn position_cursor_after_input(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 295 |     pub fn write_choice(&mut self, choice_text: &str) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub fn write_highlighted_choice(&mut self, choice_text: &str) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `colors_supported`, `unicode_support`, `width`, and `height` are never read
[INFO] [stdout]   --> src/ui/terminal.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct TerminalCapabilities {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 10 |     pub colors_supported: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     pub cursor_control: bool,
[INFO] [stdout] 12 |     pub unicode_support: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     pub width: u16,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 14 |     pub height: u16,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TerminalCapabilities` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fallback_ui` is never used
[INFO] [stdout]   --> src/ui/terminal.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl TerminalCapabilities {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn fallback_ui(&self) -> UIMode {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UIMode` is never used
[INFO] [stdout]   --> src/ui/terminal.rs:56:10
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub enum UIMode {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `original_hook` is never read
[INFO] [stdout]   --> src/ui/terminal.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Terminal {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 65 |     original_hook: Option<Box<dyn Fn() + Send + Sync>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `enter_alternate_screen`, `clear_screen`, and `flush` are never used
[INFO] [stdout]    --> src/ui/terminal.rs:89:12
[INFO] [stdout]     |
[INFO] [stdout] 68  | impl Terminal {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 89  |     pub fn enter_alternate_screen(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn clear_screen(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn flush(&mut self) -> io::Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `partial_validate`, `priority`, `name`, and `description` are never used
[INFO] [stdout]   --> src/validation/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Validator: Send + Sync {
[INFO] [stdout]    |           --------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn partial_validate(&self, input: &str, cursor_pos: usize) -> PartialValidationResult;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn priority(&self) -> Priority;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn description(&self) -> &str {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `without_cache`, `partial_validate`, `clear_cache`, and `validator_count` are never used
[INFO] [stdout]    --> src/validation/engine.rs:21:12
[INFO] [stdout]     |
[INFO] [stdout] 12  | impl ValidationEngine {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 21  |     pub fn without_cache() -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62  |     pub fn partial_validate(&self, input: &str, cursor_pos: usize) -> PartialValidationResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub fn clear_cache(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn validator_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_str` and `icon` are never used
[INFO] [stdout]   --> src/validation/priority.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Priority {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn from_str(s: &str) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn icon(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PartialValidationResult` is never constructed
[INFO] [stdout]   --> src/validation/result.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct PartialValidationResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `valid`, `error_at`, `with_suggestion`, and `blocking` are never used
[INFO] [stdout]   --> src/validation/result.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | impl PartialValidationResult {
[INFO] [stdout]    | ---------------------------- associated items in this implementation
[INFO] [stdout] 63 |     pub fn valid() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn error_at(pos: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn with_suggestion(mut self, suggestion: impl Into<String>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn blocking(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `min_only` and `max_only` are never used
[INFO] [stdout]    --> src/validation/rules/numeric.rs:182:12
[INFO] [stdout]     |
[INFO] [stdout] 172 | impl RangeValidator {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn min_only(min: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn max_only(max: f64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.74s
[INFO] running `Command { std: "docker" "inspect" "d4ad83b22c4c45384d413cef3bc0314c21aab3e2281e5506a4c5b2fe663186c1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d4ad83b22c4c45384d413cef3bc0314c21aab3e2281e5506a4c5b2fe663186c1", kill_on_drop: false }`
[INFO] [stdout] d4ad83b22c4c45384d413cef3bc0314c21aab3e2281e5506a4c5b2fe663186c1
